Virtual Private Local Area Network (LAN) Service (VPLS) is a Virtual Private Network technology that provides multipoint communication over Ethernet networks and is described in Internet Engineering Task Force (IETF) RFC 4761 and RFC 4762. When an Ethernet packet is received (ingress direction), its destination Media Access Control (MAC) address is looked up in a forwarding database. If there is no match for a unicast packet or if the packet has a multicast or a broadcast destination address then this packet needs to be duplicated and sent to every endpoint that is configured in the VPLS service. While the duplication is being done, two requirements of the VPLS service need to be met. The first requirement is called source suppression in which the incoming packet must not be sent back to where it is coming from. The second requirement is called split horizon and relates to split horizon groups. Split horizon is a loop prevention technique used among multiple endpoints that have loops amongst them which can be configured using split horizon groups.
In typical routers and switches having a distributed architecture, every line card is connected to each other line card via a fabric switch and fabric links connecting each line card to the fabric switch. The bandwidth among the line cards and the fabric switch is limited to the capacity of the fabric switch and fabric links. Packets requiring duplication, i.e. multicasting, can use a significant portion of that bandwidth. Therefore, an efficient way of multicasting packets in a system having a distributed architecture is desired.